package modellayer;


/**
 * The Lead class to create Lead objects
 * @author Allan Eriksen, Andreas Rye, Casper Madsen, Christian Stidsborg, Stefan Bols
 */


public class Lead 
{
	private int leadId;
	private String leadCompanyName;
	private String leadPersonName;
	private String leadPhone;
	private String leadMail;
	private String leadWebsite;
	private long addedDate;
	private KeyPerson kp;
	private boolean isDummy;
	
	/**
	 * 
	 * @param leadId
	 * @param leadCompanyName
	 * @param leadPersonName
	 * @param leadPhone
	 * @param leadMail
	 * @param leadWebsite
	 * @param addedDate
	 * @param isDummy
	 */
	
	/**
	 * Constructor for Lead class
	 */
	public Lead(int leadId, String leadCompanyName, String leadPersonName, String leadPhone, String leadMail, String leadWebsite, long addedDate)
	{
		this.leadId = leadId;
		this.leadCompanyName = leadCompanyName;
		this.leadPersonName = leadPersonName;
		this.leadPhone = leadPhone;
		this.leadMail = leadMail;
		this.leadWebsite = leadWebsite;
		this.addedDate = addedDate;
		this.isDummy = false;
	}
	
	/**
	 * Lead dummy for the Database layer
	 * @param leadId
	 */
	public Lead(int leadId)
	{
		this.leadId = leadId;
		this.isDummy = true;
	}

	/**
	 * Get method for the leadCompanyName 
	 * @return leadCompanyName
	 */
	public String getLeadCompanyName() 
	{
		return leadCompanyName;
	}

	/**
	 * Set method for the leadCompanyName 
	 * @return leadCompanyName
	 */
	public void setLeadCompanyName(String leadCompanyName) 
	{
		this.leadCompanyName = leadCompanyName;
	}

	/**
	 * Get method for the leadPersonName 
	 * @return leadPersonName
	 */
	public String getLeadPersonName() 
	{
		return leadPersonName;
	}

	/**
	 * Set method for the leadPersonName 
	 * @return leadPersonName
	 */
	public void setLeadPersonName(String leadPersonName) 
	{
		this.leadPersonName = leadPersonName;
	}

	/**
	 * Get method for the leadPhone 
	 * @return leadPhone
	 */
	public String getLeadPhone() 
	{
		return leadPhone;
	}

	/**
	 * Set method for the leadPhone 
	 * @return leadPhone
	 */
	public void setLeadPhone(String leadPhone) 
	{
		this.leadPhone = leadPhone;
	}

	/**
	 * Get method for the leadMail 
	 * @return leadMail
	 */
	public String getLeadMail() 
	{
		return leadMail;
	}

	/**
	 * Set method for the leadMail 
	 * @return leadMail
	 */
	public void setLeadMail(String leadMail) 
	{
		this.leadMail = leadMail;
	}

	/**
	 * Get method for the leadWebsite 
	 * @return leadWebsite
	 */
	public String getLeadWebsite() 
	{
		return leadWebsite;
	}

	/**
	 * Set method for the leadWebsite 
	 * @return leadWebsite
	 */
	public void setLeadWebsite(String leadWebsite) 
	{
		this.leadWebsite = leadWebsite;
	}

	/**
	 * Get method for the addedDate 
	 * @return addedDate
	 */
	public long getAddedDate() 
	{
		return addedDate;
	}

	/**
	 * Set method for the addedDate 
	 * @return addedDate
	 */
	public void setAddedDate(long addedDate) 
	{
		this.addedDate = addedDate;
	}

	public int getLeadId() {

		return leadId;
	}

	public KeyPerson getKeyPerson() {

		return kp;
	}


}
